package ru.budget.mobile.di

import org.koin.dsl.module
import ru.budget.mobile.domain.repository.ConsumptionRepository
import ru.budget.mobile.domain.repository.IncomeRepository
import ru.budget.mobile.domain.usecase.consumption.AddConsumptionUseCase
import ru.budget.mobile.domain.usecase.consumption.GetConsumptionListUseCase
import ru.budget.mobile.domain.usecase.income.AddIncomeUseCase
import ru.budget.mobile.domain.usecase.income.GetIncomeListUseCase

val domainModule = module {
    single {
        GetIncomeListUseCase(
            repository = get<IncomeRepository>()
        )
    }

    single {
        AddIncomeUseCase(
            repository = get<IncomeRepository>()
        )
    }

    single {
        GetConsumptionListUseCase(
            repository = get<ConsumptionRepository>()
        )
    }

    single {
        AddConsumptionUseCase(
            repository = get<ConsumptionRepository>()
        )
    }
}